package org.icec.common.utils;

/**
 * 表情符号
 *
 * @author BG340927
 */
public final class EmojiUtils {
    private EmojiUtils() {

    }

    /**
     * 检查字符串是否含有表情符号
     *
     * @param str
     * @return
     */
    public static boolean checkStringHaveEmoji(String str) {
        int len = str.length();
        for (int i = 0; i < len; i++) {
            if (isEmojiCharacter(str.charAt(i))) {
                return true;
            }
        }
        return false;
    }

    private static boolean isEmojiCharacter(char codePoint) {
        return !((codePoint == 0x0) || (codePoint == 0x9) || (codePoint == 0xA) || (codePoint == 0xD)
                || ((codePoint >= 0x20) && (codePoint <= 0xD7FF)) || ((codePoint >= 0xE000) && (codePoint <= 0xFFFD))
                || ((codePoint >= 0x10000) && (codePoint <= 0x10FFFF)));
    }

}
